From b4f93cae82c0df9f013d58ef3f73460611b174ff Mon Sep 17 00:00:00 2001 From: =?utf8?q?Ond=C5=99ej=20Sur=C3=BD?= Date: Sat, 2 Dec 2023 22:09:36 +0100 Subject: [PATCH] Disable assembly detection in Zend arithmetic with gcc < 5 Gbp-Pq: Name 0042-Disable-assembly-detection-in-Zend-arithmetic-with-g.patch --- Zend/zend_operators.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Zend/zend_operators.h b/Zend/zend_operators.h index ddc37329..56517dc6 100644 --- a/Zend/zend_operators.h +++ b/Zend/zend_operators.h @@ -534,7 +534,7 @@ ZEND_API void zend_reset_lc_ctype_locale(void); static zend_always_inline void fast_long_increment_function(zval *op1) { -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) +#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && (__GNUC__ > 4) __asm__ goto( "addl $1,(%0)\n\t" "jo %l1\n" @@ -597,7 +597,7 @@ overflow: ZEND_ATTRIBUTE_COLD_LABEL static zend_always_inline void fast_long_decrement_function(zval *op1) { -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) +#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && (__GNUC__ > 4) __asm__ goto( "subl $1,(%0)\n\t" "jo %l1\n" @@ -660,7 +660,7 @@ overflow: ZEND_ATTRIBUTE_COLD_LABEL static zend_always_inline void fast_long_add_function(zval *result, zval *op1, zval *op2) { -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) +#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && (__GNUC__ > 4) __asm__ goto( "movl (%1), %%eax\n\t" "addl (%2), %%eax\n\t" @@ -750,7 +750,7 @@ overflow: ZEND_ATTRIBUTE_COLD_LABEL static zend_always_inline void fast_long_sub_function(zval *result, zval *op1, zval *op2) { -#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && !(4 == __GNUC__ && 8 == __GNUC_MINOR__) +#if ZEND_USE_ASM_ARITHMETIC && defined(__i386__) && (__GNUC__ > 4) __asm__ goto( "movl (%1), %%eax\n\t" "subl (%2), %%eax\n\t" -- 2.39.5